TeamB

id: task-164 title: Add auto_commit config option with default false status: Done assignee: [] created_date: '2025-07-07' updated_date: '2025-07-07' labels:

  • enhancement
  • config dependencies: []

Description

Add configuration option to disable automatic git commits based on user feedback in issues #160 and #164. Users want control over their git history and commit conventions.

Acceptance Criteria

  • [x] Add autoCommit field to BacklogConfig type definition
  • [x] Update config schema migration to include autoCommit with default false
  • [x] Modify Core class to respect autoCommit setting for all git operations
  • [x] Update CLI commands to check autoCommit config before committing
  • [x] Add config command support for setting autoCommit option
  • [x] Update tests to verify autoCommit behavior works correctly
  • [x] Add documentation for autoCommit configuration option

Implementation Notes

Successfully implemented autoCommit configuration option with default false value.

Implementation Details:

  • Added autoCommit field to BacklogConfig type definition
  • Updated config migration to include autoCommit with default false for existing projects
  • Modified Core class methods to check autoCommit config before performing git operations
  • Updated CLI commands to remove hardcoded autoCommit=true parameters
  • Added config command support for getting/setting autoCommit option
  • All git operations now respect the autoCommit setting from config

Files Modified:

  • src/types/index.ts - Added autoCommit?: boolean to BacklogConfig
  • src/core/config-migration.ts - Added autoCommit: false to defaults and migration
  • src/core/backlog.ts - Added shouldAutoCommit() helper and updated all methods
  • src/cli.ts - Removed hardcoded autoCommit=true from CLI commands, added config support
  • src/file-system/operations.ts - Added autoCommit serialization and parsing

Usage:

  • bun run cli config set autoCommit true/false
  • bun run cli config get autoCommit
  • bun run cli config list (shows autoCommit value)

Backward Compatibility:

  • Existing projects will have autoCommit=false after migration
  • Project initialization still defaults to autoCommit=true for the init commit
  • All Core methods accept optional autoCommit parameter to override config
Brodocs MVP